package com.hospital.drug.drugzhou.service;

import com.alibaba.fastjson.JSONObject;
import com.hospital.drug.drugzhou.entity.DrugStock;
import com.hospital.drug.drugzhou.entity.Medicate;

import java.util.List;

/**
 * @description：
 * @author：zou
 * @date：2021/9/16 13:20
 * @versions：v1.0
 */
public interface MedicateService {

    /**
     * 查询申请记录
     *
     * @param xuTime      //用户选择时间段
     * @param type        //申请类型
     * @param pageSize    //页大小
     * @param currentPage //页码
     * @return json对象
     */
    JSONObject selPage(int xuTime, int type, int pageSize, int currentPage);

    /**
     * 药品管理
     *
     * @param medicate 申请记录
     * @return 0：失败  1：添加库存成功  2：新增药品成功
     */
    int drugManage(Medicate medicate);

    /**
     * 新增库存申请 (补充库存)
     *
     * @param medicate 增加库存
     * @return true 新增申请成功
     */
    boolean addInventory(Medicate medicate);

    /**
     * 新增药品申请 (购买新药)
     *
     * @param medicate 新增药品
     * @return true 新增申请成功
     */
    boolean addDrug(Medicate medicate);

    /**
     * 添加药品库存
     *
     * @param list 库存药品集合
     * @param date 入库时间
     * @return 插入的条数
     */
    int drugInventory(List<DrugStock> list, String date);

    /**
     * 根据时间查询相同的库存药品
     *
     * @param date 时间
     * @return 库存名单
     */
    List<DrugStock> drugList(String date);

}
